|
![](/i/fill.gif) |
The method is simplistic, yes. Putting a working (ha, yeah sure) example in was
probably a mistake, it was flawed the second time too. Here's the corrected (?)
one:
light_source { <0,0,-500> color rgb <1.5,1.5,1.5>
}
camera
{
location <-5,5,-15>
angle 25
look_at <0,-.5,0>
}
// approximations of Earth/Moon system (only a guess)
#declare NS1=<0,0,24>; // axial tilts [z here]
#declare NS2=<0,0,13>; // orbital inclination [11 degrees diff.?]
#declare OrbitPos1=<-.1,0,0>; // orbital distances (not real)
#declare OrbitPos2=<3,0,0>; // orbital distance [x here]
#declare Diam1=1; // sizes (not real)
#declare Diam2=.25;
#declare Rotate1=<0,28,0>; // days (not real) multiply this by Revolve#
#declare Rotate2=<0,1,0>; // orbit-coupled with Revolve#
#declare Revolve1=<0,1,0>; // orbits; same as Rotate2 (orbit-coupled)
#declare Revolve2=<0,1,0>; // [y is up coordinates]
/*
#declare PlanetTex1=texture {pigment {marble turbulence 1
color_map {[.33,.5 color rgb <0,1,0> color rgb <0,0,1>]}
} rotate 90*z}
#declare MoonTex1=texture {pigment {spotted turbulence 1
color_map {[.2,.25 color rgb <.5,.5,.5> color rgb <1,1,1>]}
} scale .5}
*/
#declare PlanetTex1=
texture {pigment {radial frequency 12 // longitudinal lines
color_map {[.1,.2 color rgbt <0,1,1,0> color rgbt <0,0,1,1>]}
} scale 1} // 1 unit so already scaled ok
texture {pigment {gradient y frequency 6 // latitudinal lines
color_map {[.1,.2 color rgbt <0,1,1,0> color rgbt <0,0,1,1>]}
} scale 1} // 1 unit so already scaled ok
#declare MoonTex1=
texture {pigment {radial frequency 4 // longitudinal lines
color_map {[.1,.2 color rgbt <1,1,1,0> color rgbt <0,0,0,1>]}
} scale .25} // scale to fit
texture {pigment {gradient y frequency 2 // latitudinal lines
color_map {[.1,.2 color rgbt <1,1,1,0> color rgbt <0,0,0,1>]}
} scale .25} // scale to fit
#declare RotatingRevolvingSphere1=
sphere {0,Diam1
texture {PlanetTex1} // texture placed before movement
rotate -360*Rotate1*clock rotate NS1 // axial tilt
rotate 360*Revolve1*clock // counter-turn of orbit
translate OrbitPos1 // needs to be opposite of other
rotate -360*Revolve1*clock
rotate NS2 // yes, NS2 here too, orbital tilt (E&M)
} // orbit
#declare RotatingRevolvingSphere2=
sphere {0,Diam2
texture {MoonTex1} // texture placed before movement
rotate -360*Rotate2*clock rotate 0 // axial tilt
rotate 360*Revolve2*clock // counter-turn of orbit
translate OrbitPos2 // needs to be opposite of other
rotate -360*Revolve2*clock
rotate NS2 // orbital tilt (E&M)
} // orbit
object {RotatingRevolvingSphere1}
object {RotatingRevolvingSphere2}
Maybe I can get the second reply cancelled as well, it isn't good, and I'm not
saying this will be right either. Best to render 100 frames at 320x240 res. to
check it out.
Bob
"Ken" <tyl### [at] pacbell net> wrote in message
news:3889E946.125F929C@pacbell.net...
|
|
| Bob Hughes wrote:
| >
| > Here's my example, and only an example. It's simplistic really,
|
| You call that simplistic ?
|
| Bob, you have become a declare freak and might want to seek professional
| help soon.
|
| <G>
|
| --
| Ken Tyler - 1300+ Povray, Graphics, 3D Rendering, and Raytracing Links:
| http://home.pacbell.net/tylereng/index.html http://www.povray.org/links/
Post a reply to this message
|
![](/i/fill.gif) |